This allows us to avoid hand-rolling g_strdup_printf calls,
but also moves the printf into the called function where
it doesn't bloat the code of the calling function if the profiler
is not running.
"gtk", name, message);
}
+void
+gdk_profiler_add_markf (gint64 start,
+ guint64 duration,
+ const char *name,
+ const char *format,
+ ...)
+{
+ va_list args;
+ char *message;
+
+ if (!running)
+ return;
+
+ va_start (args, format);
+ message = g_strdup_vprintf (format, args);
+ va_end (args);
+
+ sysprof_capture_writer_add_mark (writer,
+ start,
+ -1, getpid (),
+ duration,
+ "gtk", name, message);
+ g_free (message);
+}
+
static guint
define_counter (const char *name,
const char *description,
guint64 duration,
const char *name,
const char *message);
+void gdk_profiler_add_markf (gint64 start,
+ guint64 duration,
+ const char *name,
+ const char *format,
+ ...) G_GNUC_PRINTF (4, 5);
guint gdk_profiler_define_counter (const char *name,
const char *description);
void gdk_profiler_set_counter (guint id,